public class Example4_23 {
   public static void main(String args[]) {
      Rational r1=new Rational();
      r1.setNumerator(1);
      r1.setDenominator(5);
      Rational r2=new Rational();
      r2.setNumerator(3);
      r2.setDenominator(2);
      Rational result=r1.add(r2); 
      int a=result.getNumerator();
      int b=result.getDenominator();  
      System.out.println("1/5+3/2 = "+a+"/"+b);
      result=r1.sub(r2);
      a=result.getNumerator();
      b=result.getDenominator();    
      System.out.println("1/5-3/2 = "+a+"/"+b);
      result=r1.muti(r2); 
      a=result.getNumerator();
      b=result.getDenominator();  
      System.out.println("1/5×3/2 = "+a+"/"+b);
      result=r1.div(r2);
      a=result.getNumerator();
      b=result.getDenominator();   
      System.out.println("1/5÷3/2 = "+a+"/"+b);
      int n=10,k=1;
      System.out.println("计算2/1+3/2+5/3+8/5+13/8…的前"+n+"项和.");
      Rational sum=new Rational();
      sum.setNumerator(0);
      Rational item=new Rational();
      item.setNumerator(2);
      item.setDenominator(1);
      while(k<=n) {
         sum=sum.add(item);
         k++;
         int fenzi=item.getNumerator();
         int fenmu=item.getDenominator();
         item.setNumerator(fenzi+fenmu);
         item.setDenominator(fenzi);
      } 
      a=sum.getNumerator();
      b=sum.getDenominator();
      System.out.println("用分数表示:");
      System.out.println(a+"/"+b);
      double doubleResult=(a*1.0)/b;
      System.out.println("用小数表示:");
      System.out.println(doubleResult); 
   }
}






